//
//  HSYBaseNavigationController.h
//  高仿暴走斗图
//
//  Created by key on 16/3/16.
//  Copyright © 2016年 huangsongyao. All rights reserved.
//

#import <UIKit/UIKit.h>

#define STARTX              -0.34//0.625                          // 背景视图起始frame.x
#define TIMEINTERVAL        0.5f                            // 动画时间
#define PROPORTION          IPHONE_WIDTH *STARTX            // move动画初始判定位置坐标

typedef NS_ENUM(NSUInteger, kHSYTransitionsAnimationType) {
    
    kHSYTransitionsAnimationTypeDone                = 0,    //无
    kHSYTransitionsAnimationTypeMove                = 1,    //平移
    kHSYTransitionsAnimationTypeCard                = 2,    //卡片
    kHSYTransitionsAnimationTypeRotation            = 3,    //旋转
    
};

typedef NS_ENUM(NSUInteger, kHSYAnimationEndType) {
    
    kHSYAnimationEndTypeDone                        = 0,
    kHSYAnimationEndTypeCancel                      = 1,
    kHSYAnimationEndTypeEnd                         = 2,
    
};

@interface HSYBaseNavigationController : UINavigationController

@property (nonatomic, strong, readonly) NSMutableArray *screenViewControllers;              //缓存每次push后的截图，只读
@property (nonatomic, assign, readwrite) BOOL showsShadow;                                  //是否显示边界的阴影效果，只读

@property (nonatomic, strong) UIView *backgroundView;                                       //pop交互上作为底层的view
@property (nonatomic, strong) UIImageView *lastScreenShotView;                              //pop交互手势中的截图
@property (nonatomic, strong) UIView *blackMask;                                            //pop交互手势中截图上层作为阴影层的view
@property (nonatomic, assign) CGFloat startBackViewX;                                       //初始便宜量

@property (nonatomic, assign) BOOL isCanDragBack;                                           //是否允许打开定制的pop交互手势
@property (nonatomic, strong) UIColor *navigationBarColor;                                  //导航栏的颜色
@property (nonatomic, assign, readonly) kHSYTransitionsAnimationType animationType;         //转场动画类型，只读

/**
 *  设置转场动画类型
 *
 *  @param animationType 动画类型
 *  @param barColor      nav bar 颜色
 */
- (void)setTransitionsAnimationType:(kHSYTransitionsAnimationType)animationType withBarColor:(UIColor *)barColor;

@end
